博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Django-分页
阅读量:6964 次
发布时间:2019-06-27

本文共 2213 字,大约阅读时间需要 7 分钟。

Django-分页

django内置的分页

Paginator对象

clipboard.png

Page对象

clipboard.png

示例

from django.core.paginator import Paginatordef students(request, num):    allStudents = Student.objects.all()    #分页 每页6条数据    paginator = Paginator(allStudents, 6)    print(paginator.count, paginator.num_pages, paginator.page_range)    pageStus = paginator.page(num)    return render(request, "students.html", {"stus":pageStus})    
学生信息

学生信息

    {% for stu in stus %}
  • {
    { stu.name }}--{
    { stu.grade }}--{
    { stu.age }}
  • {% endfor %}
{% if stus.has_previous %} 上一页{% endif %}{% for index in stus.paginator.page_range %} {% if index == stus.number %} {
{ index }} {% else %} {
{ index }}
{% endif %}{% endfor %}{% if stus.has_next %}下一页{% endif %}

django-pure-pagination 分页

(1)安装

pip install django-pure-pagination

(2)settings里面添加

INSTALLED_APPS = (    ...    'pure_pagination',)

(3)views中使用方法

class OrgView(View):    '''课程机构'''    def get(self, request):        # 所有课程机构        all_orgs = CourseOrg.objects.all()        # 有多少家机构        org_nums = all_orgs.count()        # 所有城市        all_citys = CityDict.objects.all()        # 对课程机构进行分页        # 尝试获取前台get请求传递过来的page参数        # 如果是不合法的配置参数默认返回第一页        try:            page = request.GET.get('page', 1)        except PageNotAnInteger:            page = 1        # 这里指从allorg中取五个出来,每页显示5个        p = Paginator(all_orgs, 5, request=request)        orgs = p.page(page)        return render(request, "org-list.html", {            "all_orgs": orgs,            "all_citys": all_citys,            "org_nums": org_nums,        })

(4)模板修改

#{%for course_org in all_orgs%}{%for course_org in all_orgs.object_list%}...{%endfor%}

(5)分页功能

    {% if all_orgs.has_previous %}
  • 上一页
  • {% endif %} {% for page in all_orgs.pages %} {% if page %} {% ifequal page all_orgs.number %}
  • {
    { page }}
  • {% else %}
  • {
    { page }}
  • {% endifequal %} {% else %}
  • ...
  • {% endif %} {% endfor %} {% if all_orgs.has_next %}
  • 下一页
  • {% endif %}

转载地址:http://yowsl.baihongyu.com/

你可能感兴趣的文章
Windows 7 下 ORACLE10G安装方法
查看>>
菜鸟编译Linux内核
查看>>
敏友的【敏捷个人】有感(16): 成为一个敏捷的人
查看>>
金山快盘+TortoiseSVN构建版本控制仓库
查看>>
Oracle ORA-03137: TTC protocol internal error : [12333] 故障分析
查看>>
IE浏览器下web调试工具之--IE WebDeveloper介绍
查看>>
交换两个变量值的方法汇总
查看>>
Apache、php、mysql默认安装路径
查看>>
linux下访问ftp服务器和文件传输
查看>>
CentOS下部署java quartz job
查看>>
唐僧、悟空、白骨精的信 悟空你一定Hold住啊
查看>>
jQuery.ptTimeSelect 时间控件
查看>>
Redis 在Centos Linux 上的启动脚本
查看>>
《Pro ASP.NET MVC 3 Framework》学习笔记目录
查看>>
《JavaScript高级程序设计》读书笔记(九):本地对象Array
查看>>
php 中文字符串截取子串
查看>>
从4.8.5版本升级到FastReport 4.10.1后,中文菜单有乱码,有的没有显示
查看>>
Jvascript 弹出层
查看>>
Sharepoint学习笔记—ECMAScript对象模型系列-- 3、如何查看SP object的所有方法(method)...
查看>>
信息安全大赛出的题目
查看>>